home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / gnu / nethack.lha / nethack-3.1 / include / trap.h < prev    next >
C/C++ Source or Header  |  1993-01-17  |  1KB  |  54 lines

  1. /*    SCCS Id: @(#)trap.h    3.1    92/09/28    */
  2. /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
  3. /* NetHack may be freely redistributed.  See license for details. */
  4.  
  5. /* note: no longer manipulated by 'makedefs' */
  6.  
  7. #ifndef TRAP_H
  8. #define TRAP_H
  9.  
  10. struct trap {
  11.     struct trap *ntrap;
  12.     xchar tx,ty;
  13.     Bitfield(ttyp,5);
  14.     Bitfield(tseen,1);
  15.     Bitfield(once,1);
  16.     d_level dst;    /* destination for portals */
  17. };
  18.  
  19. extern struct trap *ftrap;
  20. #define newtrap()    (struct trap *) alloc(sizeof(struct trap))
  21. #define dealloc_trap(trap) free((genericptr_t) (trap))
  22.  
  23. /* unconditional traps */
  24. #define NO_TRAP        0
  25. #define ARROW_TRAP    1
  26. #define DART_TRAP    2
  27. #define ROCKTRAP    3
  28. #define SQKY_BOARD    4
  29. #define BEAR_TRAP    5
  30. #define LANDMINE    6
  31. #define SLP_GAS_TRAP    7
  32. #define RUST_TRAP    8
  33. #define FIRE_TRAP    9
  34. #define PIT        10
  35. #define SPIKED_PIT    11
  36. #define TRAPDOOR    12
  37. #define TELEP_TRAP    13
  38. #define LEVEL_TELEP    14
  39. #define MAGIC_PORTAL    15
  40. #define WEB        16
  41. #define STATUE_TRAP    17
  42. #define MAGIC_TRAP    18
  43. #define ANTI_MAGIC    19
  44.  
  45. /* conditional feature traps */
  46. #ifdef POLYSELF
  47. #define POLY_TRAP    20
  48. #define TRAPNUM    21
  49. #else
  50. #define TRAPNUM    20
  51. #endif
  52.  
  53. #endif /* TRAP_H */
  54.